Contact centers can provide numerous services to customers, and have been doing so for years. The idea of a contact center queue is not much different from that of standing in line at a bank and waiting to be helped by the next available teller. However, there can be a lot of frustration if the first, second, or even third teller cannot answer a given question or set of questions. The same frustrations have been known to occur in contact centers. A company can gain customer satisfaction if they are able to answer their customers' questions quickly and accurately.
Contact centers, such as Automatic Call Distribution or ACD systems, are employed by many enterprises to service customer contacts. A typical contact center includes a switch and/or server to receive and route incoming packet-switched and/or circuit-switched contacts and one or more resources, such as human agents and automated resources (e.g., Interactive Voice Response (IVR) units), to service the incoming contacts.
As products and problems become more complex and diverse in nature, a single agent often lacks the skills or expertise to fully service customer contacts. To service customer contacts more effectively, the contact center may route contacts to one or more resources with specific skills and attributes. For example, contact centers that handle computer customer service may have application resources, hardware resources, operating system resources, network resources, etc. While these resources may be well-qualified to answer questions on their particular subject(s), they are often unqualified to answer questions involving subjects outside of their respective skill sets.
Currently, resources may be assigned work based on a number of factors. These factors may include, but are not limited to resource availability, agent training and/or skill, contact center state, contact type, and more. It is one goal of a contact center to maintain good customer service when handling contacts, and as such, many mechanisms have been developed to best distribute work to qualified agents in a timely and efficient manner. However, in some cases contacts may not be assigned to the most qualified agent or resource, especially with skill-specific contacts or high-demand contact center states. For example, although a particular resource may have a busy schedule with a constant workflow, that resource may wish to handle additional contacts if given the choice to do so. Unfortunately, the resource may not be assigned additional contacts through traditional workflow assignment techniques. Without a notification of available additional contacts, the resource does not even know that they exist.
In addition, training more agents in specific skill sets, (e.g., those skills that are in high demand) may also satisfy a contact center's goal of efficiently handling contacts. Currently, the training of agents is a very organized, formal, and scheduled process. As can be appreciated, there are various problems associated with scheduled training sessions. For instance, many of the best training scenarios involve real contacts serviced by a qualified agent, where an agent-in-training can observe, and in some cases even participate, with the real contacts. Unfortunately, the contacts that may present decent training opportunities are not discovered until after the contact has been routed to an agent.
In any event, work is typically assigned by a mechanism and little latitude is given to an agent or resource in selecting when to handle a contact. More specifically, when a work assignment decision is made for a work item associated with the contact, the contact is directed to an appropriate agent and/or group without prior acceptance by the agent and/or group.